<?php

use QL\QueryList;

define('INDEX','index');
/**
 * 公用的方法
 */

function GetSignUrl($username){
    $ql = QueryList::post('http://www.diyiziti.com/',[
        'ImageWidth' => '275',
        'ImageHeight' => '100',
        'ImageBgColor' => '#FFFFFF',
        'FontSize' => '60',
        'FontInfoId' => '134',
        'FontColor' => '#000000',
        'Content' => $username,
        'ActionCategory' => '1'
    ]);
    return  $SignUrl = ($ql->find('img')->src);
}

//首页导航栏
//导航栏判断是否选定状态
function getActive($navc)
{
    $c = strtolower(request()->controller());
    if (strtolower($navc) == $c) {
        echo 'active';
    }

    return '';
}
//导航栏判断下拉框是否激活状态
function getUlListActive($navc){
    $c = strtolower(request()->controller());
    if (strtolower($navc) == $c) {
        echo 'style="display: block;';
    }
    return '';
}

//导航栏判断ul列表 li 是否激活
function getUlLiactive($navc,$action){
    $c = strtolower(request()->controller());
    $a = strtolower(request()->action());
    if (strtolower($navc) == $c && strtolower($action) == $a) {
        echo 'class="active"';
    }
    return '';
}

//返回一个json数据
function  show($status, $message,$data=array()) {
    $reuslt = array(
        'status' => $status,
        'message' => $message,
        'data' => $data,
    );

    exit(json_encode($reuslt));
}

/***
 * @param $status
 * @param $message
 * @param array $data
 * @param int $httpCode
 * @return  展示layui 数据
 */
function layshow($code, $msg, $count, $data=array()){
    $reuslt = array(
        'code' =>$code,
        'msg'  =>$msg,
        'count'=>$count,
        'data' =>$data,
    );
    exit(json_encode($reuslt,JSON_UNESCAPED_UNICODE));
};

function showjson($status, $message, $data=[], $httpCode=200){
    $data = [
        'status' => $status,
        'message'=>$message,
        'data' =>$data,
    ];
    return json($data, $httpCode);
}

//返回时间的日期  省略时间
function getDateDay($str){
    return date('Y-m-d',strtotime($str));
}
//返回样本状态
function getYbzt($str){
    switch ($str){
        case 's':
            return '审核';
            break;
        case 'j':
            return '检验';
            break;
        case 'p':
            return '打印';
            break;
        default:
            return '未知';
    }
}

//在线预览pdf文件
function read_pdf($file) {
    if(strtolower(substr(strrchr($file,'.'),1)) != 'pdf') {
        echo '文件格式不对.';
        return;
    }
    if(!file_exists($file)) {
        echo '文件不存在';
        return;
    }
    header('Content-type: application/pdf');
    header('filename='.$file);
    readfile($file);
}

// 获取加字符串的md5
function getMd5Password($password) {
    return md5($password . C('MD5_PRE'));
}
function getMenuType($type) {
    return $type == 1 ? '后台菜单' : '前端导航';
}
function status($status)
{
    if ($status == 0) {
        $str = '关闭';
    } elseif ($status == 1) {
        $str = '正常';
    } elseif ($status == -1) {
        $str = '删除';
    }
    return $str;
}

//测试api的通用方法
/**
 *
 *
 *
 */
function ApiShow($status,$message,$data=[],$httpCode=200){
    $data = [
        'status' =>$status,
        'message' =>$message,
        'data' => $data,
    ];
    return json($data,$httpCode);
}

/***
 * 返回当前系统设置的标本种类
 */
function GetBbzl($dh){
    $res = Model('common')->GetBbzl($dh);
    return $res['mc'];
}

/***
 * 返回当前男女性别
 */

function ShowXB($str){
    switch ($str){
        case "1":
            return '男';
            break;
        case "2":
            return '女';
            break;
        default:
            return '未知';
    }
}

/***
 * 返回当前男女符号  数字
 */
function ResetXB($str)
{
    switch ($str) {
        case "男":
            return '1';
            break;
        case "女":
            return '2';
            break;
        default:
            return '/';
    }
}

    /***
     * 返回项目的高低值
     */
    function GetGdbj($str)
    {
        switch ($str) {
            case "g":
                return '';
                break;
        }
    }


/***
 * @param array $data
 * 打印函数
 */
    function AC($data = array())
    {
        exit(var_dump($data));
    }



    /**
     * 获取文件夹下文件的数量
     * @param $url 传入一个url如：/apps/web
     * @return int 返回文件数量
     */
/*    public function getFileNumber($url){
        $num=0;
        $arr = glob($url);
        foreach ($arr as $v) {
            if(is_file($v)) {
                $num++;
            }
            else {
                $num+=$this->getFileNumber($v."/*");
            }
        }
        return $num;
    }*/

//数据转换  object -> array
function object_array($array)
{
    if (is_object($array)) {
        $array = (array)$array;
    }
    if (is_array($array)) {
        foreach ($array as $key => $value) {
            $array[$key] = object_array($value);
        }
    }
    return $array;
}

//设置 配置文件  支持支  键 值   '' 不支持 true  false
function setConfig($key, $value)

{
    $fileUrl = APP_PATH .'extra/'. "xmb.php";

    $config = file_get_contents($fileUrl); //加载配置文件

    $config = preg_replace("/'{$key}'.*?=>.*?'.*?'/", "'{$key}' => '{$value}'", $config);

    return file_put_contents($fileUrl, $config); // 写入配置文件

}






